package ml.practicum.learn;

import java.io.Serializable;
import java.util.List;
/**
 * Description of a general model capable of calculate classification
 * and learning
 * @author Joscha
 *
 * @param <T> information (could be a class a label a list ect.)
 */
public interface Model<T extends Serializable> extends Serializable {
	/**
	 * Calculate the predicted output for the input using this model
	 * 
	 * @param input input data case
	 * @return output data case
	 */
	T calculate(List<T> input);
}
